package com.fyp.ptma.dao.repository.irepository;

import java.util.List;

import org.hibernate.HibernateException;

import com.fyp.ptma.model.Application;
import com.fyp.ptma.model.Downloader;
import com.fyp.ptma.model.Installation;

public interface IDownloaderDao extends IDao {

	public List<Application> getAllApplications(Downloader downloader)
			throws HibernateException;

	public Downloader getDownloaderByEmailAndDeviceId(Downloader downloader)
			throws HibernateException;

	public Long saveOrUpdate(Installation installation)
			throws HibernateException;

	public Long saveOrUpdate(Downloader downloader) throws HibernateException;

	public List<Downloader> getDownloadersByDeviceIds(List<String> deviceIds,
			String authEmail) throws HibernateException;

	public Downloader getDownloaderByDeviceId(Downloader deviceId)
			throws HibernateException;

	public Installation getInstallation(Installation ins)
			throws HibernateException;

}
